A modem (modulator-demodulator) is a device which allows communication between digital computing machines over voice-grade telephone lines. Although many digital communication schemes use asynchronous data transmission, there are also many computing machines which communicate by using synchronous data transmission. Synchronous data transmission is not, of itself, a problem since there are commercially available devices which provide both synchronous and asynchronous transmission.
In asynchronous communications, a character is sent by serially transmitting a number of bits according to a defined character format. In one typical character format, the first bit is called the start bit and signals the receiver that a data transmission follows. The next seven bits are called data bits and represent the character being transmitted. The next bit is often a parity bit, which is used to check for an error in the data bits. The last bit is called a stop bit, and signals the receiver that the data transmission has ended. Thus, each message contains one character. This sequence is then executed for the next character, and so on, until all the characters have been sent. A character may be, for example, a letter, a number, punctuation, or control information.
Various character formats are used. Typically, the number of data bits may be 5, 6, 7 or 8, the parity bit may signify even, odd, or no parity, or may be deleted, and there may be 1, 11/2, or 2 stop bits. In addition, the speed at which the data is sent will typically be one of the following rates: 110, 150, 300, 600, 1200, 2400, 4800, 9600, or 19,200 bits per second (bps).
For two devices to communicate, they must both use the same character format and the same data rate in bits per second.
In synchronous communications, a message may contain many characters, instead of just one. In one typical synchronous message format, the first eight bits, commonly called the beginning flag, signals the start of a message. The next eight bits are address bits, and indicate the station for which the message is intended. The next series of bits represents the characters or information being transmitted. This series may be any reasonable length and is practically limited only by the number of bits that can normally be expected to be received before an error occurs. The next 16 bits are frame check sequence bits, which are used to detect errors. The last eight bits signal the end of the message, and are commonly called the ending flag. Thus, each message can contain many characters.
As in asynchronous communications, there are several different message formats and band rates commonly used in synchronous communications, and for two devices to communicate they must both use the same message format and the same bit rate.
Some computers have a slot for a communications card. The user may insert into this slot either a serial communications card, which is then connected to a modem engine, or a card which contains a complete modem. Typically, such cards support only asynchronous communications and contain an asynchronous communications element, such as the INS8250A manufactured by National Semiconductor Corporation, Santa Clara, Calif., a microprocessor, and the other components necessary for transmitting and receiving signals over a telephone line. The communication interface between the computer and a device on a card connected to the slot is normally asynchronous.
It is possible to manufacture a modem card which supports both synchronous and asynchronous communications by replacing the INS8250A with a combined synchronous/asynchronous communications controller such as, for example, the Z8530 manufactured by Zilog, Inc., Campbell, Calif. However, such communications controllers generally cost more than asynchronous communications elements, so modem manufacturers have been presented with three choices having cost/performance tradeoffs.
If a modem manufacturer decides to produce a modem with both synchronous and asynchronous capabilities, it will have to cut its costs or profit margin to stay competitive. Otherwise, potential customers who only need asynchronous capability will go to another manufacturer who sells asynchronous only modems for a lower price. Furthermore, addition of the synchronous capability may make the modem incompatible with some existing asynchronous date communication programs.
If the modem manufacturer produces only asynchronous modems, he stands to lose potential customers who need both synchronous and asynchronous capabilities.
If the modem manufacturer produces two modem models, one synchronous, and one asynchronous, then he is burdened with the cost and problems of running two production lines instead of just one.
Modem users were likewise faced with three choices: purchase an asynchronous-only modem, and forgo synchronous communications; purchase a synchronously-only modem, and forgo asynchronous communications; or purchase a synchronous/asynchronous modem, and pay a higher price.
There is therefore a need for a modem which uses an asynchronous communications element, supports both synchronous and asynchronous communications, is price-competitive with asynchronous-only modems, and which provides compatibility with existing asynchronous data communications programs.
Additionally, it is known that, in synchronous communications formats, data must be supplied at a rate adequate to assure data availability for a complete message as described above. It is also desirable to provide a standard interface to a synchronous/asynchronous communication which will allow the user to implement synchronous or asynchronous communications easily, by following a few simple rules, in a manner that is independent of the modem device used.